﻿using System;
using System.Threading.Tasks;
using Zombie.Services.Definitions;

namespace Zombie.WcfServices
{
	public class InformationService : IInformationService
	{

		async public Task<ZombieTypeSummaryCollection> ListZombieTypes()
		{
			var result = new ZombieTypeDetails("ninja", 1, detailedDescription: "This is a detailed description", lastSighted: DateTimeOffset.Now);

			//result.WriteHiddenName("ninja");
			return new ZombieTypeSummaryCollection() { result };
		}

		async public Task<ZombieTypeDetails> GetZombieTypeDetails(int zombieTypeKey)
		{
			var result = new ZombieTypeDetails("ninja", 1, briefDescription: "This is a brief description", detailedDescription: "This is a detailed description", thumbnailImage: new Uri("http://cdn3.infoq.com/styles/i/logo-infoq.gif"), lastSighted: DateTimeOffset.Now);
			return result;
		}

		async public Task<int> LogIncident(SessionToken session, ZombieSighting sighting)
		{
			return 5;
		}
	}
}